package Day_0202.Mybatis;

/**
 * @author zxc
 * @date 2023/02/02 22:45
 **/
public class Mybatis_Advantage_Disadvantage {
    public static void main(String[] args) {
        /**
         * Mybatis的优点 && 缺点
         * ===》
         * 1.优点：
         * （1）基于SQL语句编程，相当灵活，不会对应用程序或者数据库的现有设计造成任何影响，
         *  SQL写在XML里，解除sql与程序代码的耦合，便于统一管理；提供XML标签，支持编写动态SQL语句，并可重用。
         *  ===》
         *  总结 ：由于sql语句是存储在xml文件中的，所以sql语句和程序代码是松耦合的;
         *
         * （2）与JDBC相比，减少了50%以上的代码量，消除了JDBC大量冗余的代码，不需要手动开关连接；
         *
         * （3）很好的与各种数据库兼容
         * （因为MyBatis使用JDBC来连接数据库，所以只要JDBC支持的数据库MyBatis都支持）。
         *
         * （4）能够与Spring很好的集成；
         *
         * （5）提供映射标签，支持对象与数据库的ORM字段关系映射；提供对象关系映射标签，支持对象关系组件维护。
         *  ===>
         *  总结 ：
         *  即，Mybatis是支持对象关系映射（ORM）：对象中各个属性与数据库中对应记录的各个字段是能够相互映射的;
         *
         * 2.缺点
         * （1）SQL语句的编写工作量较大，尤其当字段多、关联表多时，对开发人员编写SQL语句的功底有一定要求。
         *
         * （2）SQL语句依赖于数据库，导致数据库移植性差，不能随意更换数据库。
         *
         */
    }
}
